package BasedeDatos;

import java.sql.*;
import java.util.*;

import Clases.*;
import Operaciones.OperacionesBD;

public class misionJDBC {
	Connection con;
	Mision m = new Mision();
	ArrayList<Mision> l = new ArrayList<Mision>();
	OperacionesBD o;
	
	public Mision selectMision(int entryA, int entryH, int ambas) throws SQLException{
		con = Conexion.conexion();
		Statement stmt = con.createStatement();
		String q = "SELECT entryA,entryH,ambas,comentario,usuario,ip,prioridad FROM mision WHERE entryA = '"+entryA+"' AND entryH = '"+entryH+"' AND ambas = '"+ambas+"';";
		try{
		ResultSet sr = stmt.executeQuery(q);
		while(sr.next()){
			
			m.setEntryA(sr.getInt("entryA"));
			m.setEntryH(sr.getInt("entryH"));
			m.setAmbas(sr.getInt("ambas"));
			m.setComentario(sr.getString("comentario"));
			m.setUsuario(sr.getInt("usuario"));
			m.setIp(sr.getString("ip"));
			m.setPrioridad(sr.getInt("prioridad"));
			}
		sr.close();
		}
	catch(SQLException e){}
		return m;
	}
	
	public ArrayList<Mision> selectListaMision() throws SQLException{
		con = Conexion.conexion();
		Statement stmt = con.createStatement();
		String q = "SELECT entryA,entryH,ambas,comentario,usuario,ip,prioridad FROM mision WHERE asignado = '0';";
		try{
		ResultSet sr = stmt.executeQuery(q);
		while(sr.next()){
			Mision mi = new Mision();
			mi.setEntryA(sr.getInt("entryA"));
			mi.setEntryH(sr.getInt("entryH"));
			mi.setAmbas(sr.getInt("ambas"));
			mi.setComentario(sr.getString("comentario"));
			mi.setUsuario(sr.getInt("usuario"));
			mi.setIp(sr.getString("ip"));
			mi.setPrioridad(sr.getInt("prioridad"));
			l.add(mi);
			}
		sr.close();
		}
	catch(SQLException e){}
		return l;
	}
	
	public void asignarMision(Mision m, Usuario u) throws SQLException{
		con = Conexion.conexion();
		Statement stmt = con.createStatement();
			String q1 = "UPDATE mision SET asignado ='"+1+"' Where entryA ='"+m.getEntryA()+"' AND entryH ='"+m.getEntryH()+"' AND ambas ='"+m.getAmbas()+"';";
		    String q2 = "INSERT INTO misionasignado (usuario,entryA,entryH,ambas,prioridad) values( '"+u.getGuid()+"' ,'"+m.getEntryA()+"','"+m.getEntryH()+"','"+m.getAmbas()+"' , '"+m.getPrioridad()+"');";
		    stmt.executeUpdate(q1);
		    stmt.executeUpdate(q2);
	}
	
	public void limpiarreporteMision() throws SQLException{
		con = Conexion.conexion();
		Statement stmt = con.createStatement();
		String q = "DELETE FROM misionasignado;";
		stmt.executeUpdate(q);
	}
	
	public void insertMision(int entrya,int entryh, int ambas, String comentario, int usuario, String ip,int prioridad) throws SQLException{
		con = Conexion.conexion();
		Statement stmt = con.createStatement();
		String q = "INSERT INTO mision (entryA,entryH,ambas,comentario,usuario,ip,prioridad) VALUES ('"+entrya+"','"+entryh+"','"+ambas+"','"+comentario+"','"+usuario+"','"+ip+"','"+prioridad+"');";	
		stmt.executeUpdate(q);
	}
}
